# !/usr/bin/env python
# -*- coding:utf-8 -*-
# @FileName : HJ41.py
# @Time     : 2024/2/29 22:55
# @Author   : Robot-Zsj
"""
description:

现有n种砝码，重量互不相等，分别为m1,m2,m3...mn；
每种砝码对应的数量为x1,x2,x3...xn。现在要用这些砝码去称物体的重量（放在同一侧），问能称出多少种不同的重量。

注：
称重重量包括0

输入描述：
对于每组测试数据：
第一行： n ---砝码的种数（范围[1,10]）
第二行：m1 m2 m3...mn --- 每种砝码的重量（范围[1,2000])
第三行：x1 x2 x3 ... xn --- 每种砝码对饮的数量（范围[1,10])

输出描述：
利用给定的砝码可以称出的不同的重量数

输入:
2
1 2
2 1

输出：
5

说明：可以表示除0,1,2,3,4五种重量
"""
while True:
    try:
        n = int(input())
        m = list(map(int, input().split()))  # 每种砝码的重量
        x = list(map(int, input().split()))  # 每种砝码的数量
    except:
        break
    else:
        amount = []
        weights = {0, }
        for i in range(n):  # 几种砝码
            for j in range(x[i]):  # 每种个数
                amount.append(m[i])  # 将所有砝码添加到amount

        for i in amount:  # 每次取出一个i重量的砝码
            for j in list(weights):  # 从已有的重量集合中取出j
                weights.add(i + j)  # 重量集合增阿基一个i+j重量的砝码
        print(len(weights))  # 打印重量集合的长度
